package com.spzx.order.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.spzx.order.api.domain.OrderInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.spzx.order.domain.vo.OrderTradeVO;

/**
 * 订单Service接口
 *
 * @author atguigu
 * @date 2024-07-12
 */
public interface IOrderInfoService extends IService<OrderInfo>
{

    OrderTradeVO trade();

    String submitOrder(OrderInfo orderInfo);

    Page<OrderInfo> userOrderInfoList(Integer pageNum, Integer pageSize, Integer orderStatus);

    OrderInfo selectOrderInfoById(Long orderId);

    OrderTradeVO buy(Long skuId);

    boolean cancelOrder(Long orderId);

    void closeOrder(String orderId);

    OrderInfo getOrderInfoByOrderNo(String orderNo);
}
